import { Nyt7PlotDetailInfoVO } from '@/api/Nyt7PlotDetailInfo/Nyt7PlotDetailInfo/types';
import { PostVO } from '@/api/system/post/types';
import { Nyt7FarmerInsuranceInfoVO } from '@/api/Nyt7FarmerInsuranceInfo/Nyt7FarmerInsuranceInfo/types';

export interface Nyt7PolicyInsuranceVO {
  /**
   * id
   */
  id: string | number;

  /**
   * 保单号
   */
  policyNumber: string;


  /**
   * 投保标识
   */
  insuranceIdentifier: string | number;

  /**
   * 投保总户数
   */
  totalInsuredHouseholds: number;

  /**
   * 作物代码
   */
  cropCode: string;

  /**
   * 险种代码
   */
  insuranceTypeCode: string;

  /**
   * 总承包面积
   */
  totalContractArea: number;

  /**
   * 保费总额
   */
  totalPremium: number;

  /**
   * 用户自缴总额
   */
  totalSelfPaidByUser: number;

  /**
   * 中央财政补贴总额
   */
  totalCentralFiscalSubsidy: string | number;

  /**
   * 省级财政补贴总额
   */
  totalProvincialFiscalSubsidy: string | number;

  /**
   * 地市财政补贴总额
   */
  totalMunicipalFiscalSubsidy: string | number;

  /**
   * 区县财政补贴总额
   */
  totalDistrictAndCountyFiscalSubsidy: string | number;

  /**
   * 其他财政补贴总额
   */
  totalOtherFiscalSubsidies: string | number;

  /**
   * 保险公司
   */
  sysPostVo: PostVO;

  /**
   * 地块
   */
  nyt7PlotDetailInfoVo: Nyt7PlotDetailInfoVO;

  /**
   * 农户
   */
  nyt7FarmerInsuranceInfoVo: Nyt7FarmerInsuranceInfoVO;

}

export interface Nyt7PolicyInsuranceForm extends BaseEntity {
  /**
   * id
   */
  id?: string | number;

  /**
   * 保单号
   */
  policyNumber?: string;

  /**
   * 投保标识
   */
  insuranceIdentifier?: string | number;

  /**
   * 投保总户数
   */
  totalInsuredHouseholds?: number;

  /**
   * 作物代码
   */
  cropCode?: string;

  /**
   * 险种代码
   */
  insuranceTypeCode?: string;

  /**
   * 总承包面积
   */
  totalContractArea?: number;

  /**
   * 保费总额
   */
  totalPremium?: number;

  /**
   * 用户自缴总额
   */
  totalSelfPaidByUser?: number;

  /**
   * 中央财政补贴总额
   */
  totalCentralFiscalSubsidy?: string | number;

  /**
   * 省级财政补贴总额
   */
  totalProvincialFiscalSubsidy?: string | number;

  /**
   * 地市财政补贴总额
   */
  totalMunicipalFiscalSubsidy?: string | number;

  /**
   * 区县财政补贴总额
   */
  totalDistrictAndCountyFiscalSubsidy?: string | number;

  /**
   * 其他财政补贴总额
   */
  totalOtherFiscalSubsidies?: string | number;


  /**
   * 保险公司id
   */
  postId: number;

  /**
   * 地块id
   */
  plotId: number;

  /**
   * 农户id
   */
  farmerId: number;


  /**
   * 保险公司
   */
  sysPost: PostVO;

  /**
   * 地块
   */
  plotDetailInfo: Nyt7PlotDetailInfoVO;

  /**
   * 农户
   */
  farmerInsuranceInfo: Nyt7FarmerInsuranceInfoVO;

}

export interface Nyt7PolicyInsuranceQuery extends PageQuery {

  /**
   * id
   */
  id?: number;


  /**
   * 保单号
   */
  policyNumber?: string;

  /**
   * 保险公司
   */
  insuranceCompanyName?: string | number;

  /**
   * 经度坐标
   */
  latitude: string;


  /**
   * 纬度坐标
   */
  longitude: string;

    /**
     * 日期范围参数
     */
    params?: any;
}


export interface EntitySearchResult {
  /**
   * 农户
   */
  farmerInsuranceInfo: Nyt7FarmerInsuranceInfoVO;


  /**
   * 保险公司
   */
  sysPost: PostVO;

  /**
   * 地块
   */
  plotDetailInfo: Nyt7PlotDetailInfoVO;

}
